# Get a product

Retrieves a single product by its unique identifier.

Endpoint: GET /v1/products/{productUuid}
Version: 1.1.0
Security: Bearer

## Path parameters:

  - `productUuid` (string, required)
    The unique identifier of the product.

## Header parameters:

  - `X-Channel-Uuid` (string)

## Query parameters:

  - `include[productAssets]` (boolean)

  - `expand[productAssets]` (boolean)

  - `include[productAttributes]` (boolean)

  - `expand[productAttributes]` (boolean)

  - `include[productAttributeTerms]` (boolean)

  - `expand[productAttributeTerms]` (boolean)

  - `include[productCategories]` (boolean)

  - `expand[productCategories]` (boolean)

  - `include[productTags]` (boolean)

  - `expand[productTags]` (boolean)

  - `include[productInputValues]` (boolean)

  - `expand[productInputValues]` (boolean)

  - `include[relations]` (boolean)

  - `expand[relations]` (boolean)

  - `include[channelPublications]` (boolean)

  - `expand[channelPublications]` (boolean)

  - `expand[completeness]` (boolean)

## Response 200 fields (application/json):

  - `uuid` (string, required)
    Unique identifier for this product.

  - `familyUuid` (string,null)
    Identifier of the family defining structure and requirements for this product.

  - `parentUuid` (string,null)
    Identifier of the parent product for variant relationships.

  - `brandUuid` (string,null)
    Identifier of the brand associated with this product.

  - `createdAt` (string, required)
    Timestamp when this product was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `updatedAt` (string, required)
    Timestamp when this product was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `removedAt` (string,null)
    Timestamp when this product was removed. Null if not removed.
    Example: "2025-11-23T14:15:22.123456Z"

  - `archivedAt` (string,null)
    Timestamp when this product was archived. Null if not archived.
    Example: "2025-11-23T14:15:22.123456Z"

  - `status` (string, required)
    Lifecycle status of a product.
    Enum: "draft", "published", "unpublished", "archived", "removed"

  - `type` (string, required)
    Product type defining variant behavior.
    Enum: "simple", "variantParent", "variant"

  - `code` (string, required)
    Unique code identifier for this product.

  - `displayName` (string, required)
    The display name of the product.

  - `productAssetUuids` (array,null)
    Collection of product-asset junction UUIDs. Populated when include[productAssets]=true.

  - `productAssets` (array,null)
    Collection of product-asset junctions. Populated when expand[productAssets]=true.

  - `productAssets.uuid` (string, required)

  - `productAssets.productUuid` (string, required)

  - `productAssets.assetUuid` (string, required)

  - `productAssets.productAssetTypeUuid` (string, required)

  - `productAssets.createdAt` (string, required)
    Example: "2025-11-23T14:15:22.123456Z"

  - `productAssets.updatedAt` (string, required)
    Example: "2025-11-23T14:15:22.123456Z"

  - `productAssets.order` (integer, required)

  - `productAttributeUuids` (array,null)
    Collection of product-attribute junction UUIDs. Populated when include[productAttributes]=true.

  - `productAttributes` (array,null)
    Collection of product-attribute junctions. Populated when expand[productAttributes]=true.

  - `productAttributes.uuid` (string, required)

  - `productAttributes.productUuid` (string, required)

  - `productAttributes.attributeUuid` (string, required)

  - `productAttributes.createdAt` (string, required)
    Example: "2025-11-23T14:15:22.123456Z"

  - `productAttributes.updatedAt` (string, required)
    Example: "2025-11-23T14:15:22.123456Z"

  - `productAttributes.isVariant` (boolean, required)

  - `productAttributeTermUuids` (array,null)
    Collection of product-term junction UUIDs. Populated when include[productAttributeTerms]=true.

  - `productAttributeTerms` (array,null)
    Collection of product-term junctions. Populated when expand[productAttributeTerms]=true.

  - `productAttributeTerms.uuid` (string, required)
    Unique identifier for this product-term association.

  - `productAttributeTerms.productUuid` (string, required)
    Identifier of the product this term is linked to.

  - `productAttributeTerms.productAttributeUuid` (string, required)
    Identifier of the product attribute.

  - `productAttributeTerms.attributeTermUuid` (string, required)
    Identifier of the linked attribute term.

  - `productAttributeTerms.createdAt` (string, required)
    Timestamp when this association was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productAttributeTerms.updatedAt` (string, required)
    Timestamp when this association was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productCategoryUuids` (array,null)
    Collection of product-category junction UUIDs. Populated when include[productCategories]=true.

  - `productCategories` (array,null)
    Collection of product-category junctions. Populated when expand[productCategories]=true.

  - `productCategories.uuid` (string, required)
    Unique identifier for this product-category association.

  - `productCategories.productUuid` (string, required)
    Identifier of the product this category is linked to.

  - `productCategories.categoryUuid` (string, required)
    Identifier of the linked category.

  - `productCategories.createdAt` (string, required)
    Timestamp when this association was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productCategories.updatedAt` (string, required)
    Timestamp when this association was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productTagUuids` (array,null)
    Collection of product-tag junction UUIDs. Populated when include[productTags]=true.

  - `productTags` (array,null)
    Collection of product-tag junctions. Populated when expand[productTags]=true.

  - `productTags.uuid` (string, required)
    Unique identifier for this product-tag association.

  - `productTags.productUuid` (string, required)
    Identifier of the product this tag is linked to.

  - `productTags.tagUuid` (string, required)
    Identifier of the linked tag.

  - `productTags.createdAt` (string, required)
    Timestamp when this association was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productTags.updatedAt` (string, required)
    Timestamp when this association was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productInputValueUuids` (array,null, required)

  - `productInputValues` (array,null, required)

  - `productInputValues.uuid` (string, required)
    Unique identifier for this input value.

  - `productInputValues.productUuid` (string, required)
    Identifier of the product this value belongs to.

  - `productInputValues.typeGroupUuid` (string, required)
    Identifier of the type group containing the input type.

  - `productInputValues.inputTypeUuid` (string, required)
    Identifier of the input type for this value.

  - `productInputValues.channelUuid` (string,null, required)
    Identifier of the channel for this value. Null for non-scoped values.

  - `productInputValues.localeUuid` (string,null, required)
    Identifier of the locale for this value. Null for non-localized values.

  - `productInputValues.createdAt` (string, required)
    Timestamp when this input value was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productInputValues.updatedAt` (string, required)
    Timestamp when this input value was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `productInputValues.value` (string, required)
    The input value.

  - `relationUuids` (array,null)
    Collection of relation UUIDs for this product.

  - `relations` (array,null)
    Collection of related products.

  - `relations.uuid` (string, required)
    Unique identifier for this product relation.

  - `relations.productUuid` (string, required)
    Identifier of the source product owning this relation.

  - `relations.productReferenceUuid` (string, required)
    Identifier of the target product being referenced.

  - `relations.createdAt` (string, required)
    Timestamp when this relation was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `relations.updatedAt` (string, required)
    Timestamp when this relation was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `relations.productRelationTypeUuid` (string, required)
    Identifier of the product relation type.

  - `channelPublicationUuids` (array,null)
    Collection of channel publication UUIDs. Populated when include[channelPublications]=true.

  - `channelPublications` (array,null)
    Collection of channel publications. Populated when expand[channelPublications]=true.

  - `channelPublications.uuid` (string, required)
    Unique identifier for this product channel publication.

  - `channelPublications.productUuid` (string, required)
    Identifier of the product this publication belongs to.

  - `channelPublications.channelUuid` (string, required)
    Identifier of the channel this publication targets.

  - `channelPublications.createdAt` (string, required)
    Timestamp when this publication was created.
    Example: "2025-11-23T14:15:22.123456Z"

  - `channelPublications.updatedAt` (string, required)
    Timestamp when this publication was last modified.
    Example: "2025-11-23T14:15:22.123456Z"

  - `channelPublications.status` (string, required)
    Current lifecycle status of this publication.
    Enum: "draft", "published", "unpublished"

## Response 401 fields (application/problem+json):

  - `type` (string,null)

  - `title` (string,null)

  - `status` (integer,null)

  - `detail` (string,null)

  - `instance` (string,null)

## Response 403 fields (application/problem+json):

  - `type` (string,null)

  - `title` (string,null)

  - `status` (integer,null)

  - `detail` (string,null)

  - `instance` (string,null)

  - `correlationId` (string,null)

## Response 404 fields (application/problem+json):

  - `type` (string,null)

  - `title` (string,null)

  - `status` (integer,null)

  - `detail` (string,null)

  - `instance` (string,null)

  - `correlationId` (string,null)

## Response 500 fields (application/problem+json):

  - `type` (string,null)

  - `title` (string,null)

  - `status` (integer,null)

  - `detail` (string,null)

  - `instance` (string,null)

  - `correlationId` (string,null)


